home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / logs / logbook / wasedit.prg < prev    next >
Text File  |  1990-05-04  |  4KB  |  142 lines

  1. *:*********************************************************************
  2. *:
  3. *:        Program: WASEDIT.PRG
  4. *:
  5. *:         System: PC-HAM Logbook
  6. *:         Author: Joe Kasser G3ZCZ
  7. *:      Copyright (c) 1990, Joe Kasser
  8. *:  Last modified: 04/27/90     13:33
  9. *:
  10. *:      Called by: WAS.PRG                       
  11. *:
  12. *:           Uses: &LOGBOOK.DBF   
  13. *:               : &WAS           
  14. *:
  15. *:        Indexes: &LOGNDX
  16. *:
  17. *:      Documented 05/04/90 at 13:49                SNAP!  version 3.12f
  18. *:*********************************************************************
  19. * WASEDIT VERSION 860625 (c) COPYRIGHT 1985,1986 JOE KASSER G3ZCZ
  20. * PUTS DATA IN WAS DATABASE
  21. SELECT 1
  22. USE &logbook  INDEX &logndx
  23.  
  24. SELECT 2
  25. USE &was
  26. CLEAR
  27.  
  28. STORE .t. TO cflag
  29. STORE '             ' TO cstate
  30. STORE ' ' TO df
  31. STORE '         ' TO callcard
  32.  
  33. DO WHILE cflag
  34.    CLEAR
  35.    @ 2,1 SAY ' '
  36.    ?  'WAS DATABASE    ',was
  37.    @ 5,1 SAY ' '
  38.    ACCEPT 'Which State (* to terminate) ? '  TO cstate
  39.    IF  cstate = '*'
  40.       STORE .F. TO cflag
  41.    ELSE
  42.       SELECT 2
  43.       GOTO TOP
  44.       LOCATE FOR  pc = cstate
  45.       IF EOF()
  46.          @ 8,10 SAY 'ENTRY ERROR-  THERE IS NO SUCH STATE AS '
  47.          @ 8,52 SAY cstate
  48.          GOTO TOP
  49.          @ 12,25 SAY ' ALLOWABLE STATES ARE -'
  50.          @ 15,1 SAY ' '
  51.          ?
  52.          STORE 1 TO counter
  53.          DO WHILE .not. EOF()
  54.             ?? pc,'   '
  55.             STORE counter + 1 TO counter
  56.             IF counter = 10
  57.                ?
  58.                STORE 1 TO counter
  59.             ENDIF
  60.             SKIP
  61.          ENDDO
  62.          RELEASE counter
  63.          WAIT
  64.       ELSE
  65.          CLEAR
  66.          @ 4,20 SAY 'STATE OF'
  67.          @ 4,30 SAY pc
  68.          @ 4,40 SAY 'OR'
  69.          @ 4,50 SAY state
  70.          @ 7,1 SAY ' '
  71.          IF dcall = ' '
  72.             ? '                    has not been worked'
  73.          ELSE
  74.             ? ddate,dband,dcall,dmode,dstate
  75.          ENDIF
  76.          
  77.          @ 10,1 SAY 'Do you want to update the entry (Y/N/E) ?'
  78.          @ 10,43 GET df
  79.          READ
  80.          
  81.          DO CASE
  82.          CASE df = 'Y'
  83.             
  84.             STORE '         ' TO  callcard
  85.             SELECT 1
  86.             @ 12,1 SAY 'What is the call ? '
  87.             @ 12,21 GET callcard
  88.             READ
  89.             FIND &callcard
  90.             @ 14,1 SAY ' '
  91.             IF (EOF() .or. BOF())
  92.                ? callcard,' is not in log'
  93.             ELSE
  94.                STORE .t. TO qflag
  95.                DO WHILE CALL = callcard .and. qflag
  96.                   @ 20,1 SAY ' '
  97.                   DISP
  98.                   @ 22,2 SAY ' '
  99.                   ACCEPT 'This one (Y/N) ?' TO df
  100.                   IF df = 'Y'
  101.                      STORE .F. TO qflag
  102.                   ENDIF
  103.                   SKIP
  104.                ENDDO
  105.                IF qflag
  106.                   * DON'T update entry
  107.                ELSE
  108.                   SKIP -1
  109.                   STORE CALL TO CALL
  110.                   STORE DATE TO DATE
  111.                   STORE TIME TO TIME
  112.                   STORE band TO band
  113.                   STORE mode TO mode
  114.                   STORE qslrx TO qslrx
  115.                   SELECT 2
  116.                   REPLACE dcall WITH CALL
  117.                   REPLACE dcall WITH CALL
  118.                   REPLACE ddate WITH DATE
  119.                   REPLACE dband WITH band
  120.                   REPLACE dmode WITH mode
  121.                   REPLACE dstate WITH qslrx
  122.                ENDIF
  123.             ENDIF
  124.          CASE df = 'E'
  125.             REPLACE dcall WITH '          '
  126.             REPLACE ddate WITH ' '
  127.             REPLACE dband WITH ' '
  128.             REPLACE dmode WITH ' '
  129.             REPLACE dstate WITH ' '
  130.             
  131.          ENDCASE
  132.       ENDIF
  133.    ENDIF
  134. ENDDO
  135. SELECT 1
  136. USE
  137. SELECT 2
  138. USE
  139. RELEASE qflag,callcard,df,cstate,cflag, CALL, DATE, TIME, band, mode, qslrx
  140. RETURN
  141. *: EOF: WASEDIT.PRG
  142.